#include "wdg.h"
#include "led.h"

//V1.1 20120903
//增加了窗口看门狗相关函数。


//初始化独立看门狗
//prer:分频数:0~7(只有低3位有效!)
//分频因子=4*2^prer.但最大值只能是256!
//rlr:重装载寄存器值:低11位有效.
//时间计算(大概):Tout=((4*2^prer)*rlr)/40 (ms).
//以下设置中的xms不能超过1600ms
void IWDG_Init(uint16_t xms)
{

    uint16_t rlr = 1.25*xms;

    IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);  //使能对寄存器IWDG_PR和IWDG_RLR的写操作

    IWDG_SetPrescaler(IWDG_Prescaler_32);  //设置IWDG预分频值:设置IWDG预分频值为64

    IWDG_SetReload(rlr);  //设置IWDG重装载值

    IWDG_ReloadCounter();  //按照IWDG重装载寄存器的值重装载IWDG计数器

    IWDG_Enable();  //使能IWDG
}
//喂独立看门狗
void IWDG_Feed(void)
{
    IWDG_ReloadCounter();	//重载计数值
}

